Skip to content

starknet_transaction_prover: proving-job duration + outcome metrics#14168

Open
avi-starkware wants to merge 1 commit into
avi/prover-v3/metricsfrom
avi/prover-v3/job-metrics
Open

starknet_transaction_prover: proving-job duration + outcome metrics#14168
avi-starkware wants to merge 1 commit into
avi/prover-v3/metricsfrom
avi/prover-v3/job-metrics

Conversation

@avi-starkware
Copy link
Copy Markdown
Collaborator

Adds Prometheus counters / histograms recorded by VirtualSnosProver for
each proving job: total count by outcome (success, validation_error,
internal_error, l1_provider_error) and end-to-end duration.

Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com

@cursor
Copy link
Copy Markdown

cursor Bot commented May 24, 2026

PR Summary

Low Risk
Observability-only refactor with metrics recorded after the same proving logic; no auth, data, or API behavior changes.

Overview
Adds Prometheus instrumentation around prove_transaction so operators can track latency and failure mix without changing proving semantics.

Each request records a bucketed end-to-end histogram (prover_prove_transaction_duration_seconds) on success or failure, plus a counter (prover_prove_transaction_outcome_total) labeled with a fixed outcome set (success, failure_validation, failure_blocked, failure_runner, failure_output_parse, failure_proving). Failures are classified via new VirtualSnosProverError::metric_outcome() so label cardinality stays bounded.

The proving path is split into prove_transaction (metrics + logging) and prove_transaction_inner (unchanged flow). run_and_prove now emits separate histograms for virtual OS run time and Stwo prove time. Metric name and outcome constants live in server::metrics.

Reviewed by Cursor Bugbot for commit 15f1abf. Bugbot is set up for automated code reviews on this repo. Configure here.

@reviewable-StarkWare
Copy link
Copy Markdown

This change is Reviewable

@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from 7d179cb to a0e7299 Compare May 24, 2026 16:48
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch 2 times, most recently from 5eb413f to 186e4cf Compare May 26, 2026 08:43
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from a0e7299 to 00671e6 Compare May 26, 2026 08:43
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from 186e4cf to 9959caa Compare May 26, 2026 12:16
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from 00671e6 to 68683f0 Compare May 26, 2026 12:16
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from 9959caa to 1733122 Compare May 26, 2026 12:17
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch 2 times, most recently from 00f7551 to b51be4a Compare May 26, 2026 12:58
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from 1733122 to 4403df0 Compare May 26, 2026 12:58
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from b51be4a to 396774b Compare May 26, 2026 16:14
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch 2 times, most recently from 3e19b68 to f196a34 Compare May 26, 2026 16:47
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch 3 times, most recently from fb01d37 to f1b98e4 Compare May 27, 2026 10:01
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch 2 times, most recently from 7c12cba to aa40e3d Compare May 27, 2026 10:35
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch 2 times, most recently from 9898133 to 6974938 Compare May 27, 2026 12:55
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from aa40e3d to 3790635 Compare May 27, 2026 12:56
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from 6974938 to d0b3654 Compare May 27, 2026 13:11
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch 2 times, most recently from 6834e33 to c055b5f Compare May 27, 2026 14:04
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from d0b3654 to d84bd92 Compare May 27, 2026 14:04
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from c055b5f to b9b156a Compare May 27, 2026 14:20
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch 2 times, most recently from b2da23d to ac34a57 Compare May 31, 2026 10:23
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from b9b156a to 69e6de4 Compare May 31, 2026 10:23
@avi-starkware avi-starkware force-pushed the avi/prover-v3/job-metrics branch from ac34a57 to 97f32a2 Compare June 1, 2026 08:17
@avi-starkware avi-starkware force-pushed the avi/prover-v3/metrics branch from 69e6de4 to 8abd666 Compare June 1, 2026 08:17
Adds Prometheus counters / histograms recorded by `VirtualSnosProver` for
each proving job: total count by outcome (`success`, `validation_error`,
`internal_error`, `l1_provider_error`) and end-to-end duration.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants